React์ experimental_Scope์ ๋ํ ์ฌ์ธต ๋ถ์์ผ๋ก, ๋ณต์กํ React ์ ํ๋ฆฌ์ผ์ด์ ์์์ ์ฑ๋ฅ ์ํฅ, ์ค์ฝํ ์ฒ๋ฆฌ ์ค๋ฒํค๋ ๋ฐ ์ต์ ํ ์ ๋ต์ ์ด์ ์ ๋ง์ถฅ๋๋ค.
React experimental_Scope ์ฑ๋ฅ ์ํฅ: ์ค์ฝํ ์ฒ๋ฆฌ ์ค๋ฒํค๋
React์ experimental_Scope API๋ React ์ปดํฌ๋ํธ ๋ด์์ ์ปจํ
์คํธ๋ฅผ ๋ ์ ์ด๋๊ณ ๋ช
์์ ์ธ ๋ฐฉ์์ผ๋ก ๊ด๋ฆฌํ๋๋ก ์ค๊ณ๋ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ๊ทธ๋ฌ๋ ๋ชจ๋ ์๋ก์ด ๊ธฐ๋ฅ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก, ํนํ ์ค์ฝํ ์ฒ๋ฆฌ ์ค๋ฒํค๋ ์ธก๋ฉด์์ ์ ์ฌ์ ์ธ ์ฑ๋ฅ ์ํฅ์ ๋๋ฐํฉ๋๋ค. ์ด ๊ธ์์๋ experimental_Scope์ ๋ณต์ก์ฑ์ ๊น์ด ํ๊ณ ๋ค์ด ์ฑ๋ฅ์ ๋ฏธ์น๋ ์ํฅ์ ์์ธ์ ํ๊ตฌํ๊ณ , ์ค์ React ์ ํ๋ฆฌ์ผ์ด์
์์ ์ฌ์ฉ์ ์ต์ ํํ๊ธฐ ์ํ ์ค์ฉ์ ์ธ ์ ๋ต์ ์ ๊ณตํฉ๋๋ค.
React experimental_Scope๋ ๋ฌด์์ธ๊ฐ?
experimental_Scope API๋ ์ปดํฌ๋ํธ ๊ฐ์ ์ํ๋ฅผ ๊ด๋ฆฌํ๊ณ ๊ณต์ ํ๋ ์๋ก์ด ๋ฐฉ๋ฒ์ ํ์ํ๋ React์ ์ง์์ ์ธ ๋
ธ๋ ฅ์ ์ผํ์
๋๋ค. ์ด๋ ์ ํต์ ์ธ React ์ปจํ
์คํธ์ ๋ํ ๋ ์์ธก ๊ฐ๋ฅํ๊ณ ๊ด๋ฆฌํ๊ธฐ ์ฌ์ด ๋์์ ์ ๊ณตํ๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค. ์ปจํ
์คํธ์ ์ ๊ทผํ๊ณ ์
๋ฐ์ดํธํ๋ ๋ฐฉ์์ ๋ํ ๊ฒฝ๊ณ๋ฅผ ๋ช
์์ ์ผ๋ก ์ ์ํ์ฌ ๋ฐ์ดํฐ ํ๋ฆ์ ๋ ์ ์ ์ดํ๊ณ ํน์ ์๋๋ฆฌ์ค์์ ์ ์ฌ์ ์ธ ์ฑ๋ฅ ํฅ์์ ์ด๋์ด๋ด๋ ๋ฐฉ๋ฒ์ด๋ผ๊ณ ์๊ฐํ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ด๋ฌํ ์ค์ฝํ๋ฅผ ์ฒ๋ฆฌํ๋ ๊ณผ์ ์์ฒด์ ์ค๋ฒํค๋๊ฐ ๋ฐ์ํฉ๋๋ค.
์ ํต์ ์ธ React ์ปจํ
์คํธ์ ์๋ฌต์ ์ธ ํน์ฑ๊ณผ ๋ฌ๋ฆฌ, experimental_Scope๋ ๊ฐ๋ฐ์๊ฐ ์ปจํ
์คํธ์ ๊ฒฝ๊ณ๋ฅผ ๋ช
์์ ์ผ๋ก ์ ์ํ ์ ์๋๋ก ํฉ๋๋ค. ์ด๋ ํน์ ๊ฐ์ด ์ฌ์ฉ ๊ฐ๋ฅํ ์ ์ฉ '์ค์ฝํ'๋ฅผ ์์ฑํ ์ ์์์ ์๋ฏธํ๋ฉฐ, ํด๋น ์ค์ฝํ ๋ด์ ์ปดํฌ๋ํธ๋ค์ ์ ์ฒด ์ปดํฌ๋ํธ ํธ๋ฆฌ๋ฅผ ์ํํ ํ์ ์์ด ํด๋น ๊ฐ์ ์ ๊ทผํ ์ ์์ต๋๋ค.
experimental_Scope์ ์ฃผ์ ์ด์ (์ด๋ก ์):
- ์์ธก ๊ฐ๋ฅ์ฑ ํฅ์: ๋ช ์์ ์ธ ์ค์ฝํ ์ ์๋ ๋ฐ์ดํฐ ํ๋ฆ์ ๋ ์ฝ๊ฒ ์ดํดํ๊ณ ๋๋ฒ๊น ํ ์ ์๊ฒ ๋ง๋ญ๋๋ค.
- ์ ์ฌ์ ์ฑ๋ฅ ์ต์ ํ: ์ปจํ ์คํธ ์ ๋ฐ์ดํธ์ ๋ฒ์๋ฅผ ์ ํํจ์ผ๋ก์จ, React๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ด๋ จ ์๋ ๋ถ๋ถ์์ ๋ถํ์ํ ๋ฆฌ๋ ๋๋ง์ ์ ์ฌ์ ์ผ๋ก ๋ฐฉ์งํ ์ ์์ต๋๋ค.
- ์ฝ๋ ๊ตฌ์ฑ ํฅ์: ์ค์ฝํ๋ ๊ด๋ จ๋ ์ํ์ ๋ก์ง์ ๊ทธ๋ฃนํํ๋ ์์ฐ์ค๋ฌ์ด ๋ฐฉ๋ฒ์ ์ ๊ณตํ์ฌ ์ฝ๋ ์ ์ง๋ณด์์ฑ์ ํฅ์์ํต๋๋ค.
๊ณผ์ : ์ค์ฝํ ์ฒ๋ฆฌ ์ค๋ฒํค๋
์ด ๊ธ์์ ๋ค๋ฃจ๋ ํต์ฌ ๋ฌธ์ ๋ ๋ช
์์ ์ผ๋ก ์ ์๋ ์ด๋ฌํ ์ค์ฝํ๋ฅผ ์ฒ๋ฆฌํ๋ ๋ฐ ๋ฐ๋ฅด๋ ์ฑ๋ฅ ์ค๋ฒํค๋์
๋๋ค. experimental_Scope๊ฐ ํน์ ์ํฉ์์ ์ฑ๋ฅ ํฅ์์ ๊ฐ์ ธ์ฌ ์ *์์ง๋ง*, ๋์
์์ฒด๋ก ๊ณ์ฐ ๋น์ฉ์ด ์ถ๊ฐ๋ฉ๋๋ค. ์ด ์ค๋ฒํค๋๋ฅผ ์ดํดํ๋ ๊ฒ์ ์ด API๋ฅผ ์ธ์ ์ด๋ป๊ฒ ์ฌ์ฉํ ์ง์ ๋ํ ์ ๋ณด์ ์
๊ฐํ ๊ฒฐ์ ์ ๋ด๋ฆฌ๋ ๋ฐ ์ค์ํฉ๋๋ค.
์ค๋ฒํค๋์ ์์ธ ์ดํดํ๊ธฐ:
- ์ค์ฝํ ์์ฑ ๋ฐ ๊ด๋ฆฌ: ์ค์ฝํ๋ฅผ ์์ฑํ๊ณ ์ ์งํ๋ ๋ฐ๋ ๊ณ์ฐ ๋น์ฉ์ด ๋ฐ์ํฉ๋๋ค. React๋ ๊ฐ ์ค์ฝํ์ ๊ฒฝ๊ณ์ ๊ทธ ์์์ ์ฌ์ฉ ๊ฐ๋ฅํ ๊ฐ์ ์ถ์ ํด์ผ ํฉ๋๋ค.
- ์ปจํ ์คํธ ์กฐํ: ์ปดํฌ๋ํธ๊ฐ ์ค์ฝํ์์ ๊ฐ์ ์ ๊ทผํ๋ ค๊ณ ํ ๋, React๋ ๊ด๋ จ ๊ฐ์ ์ฐพ๊ธฐ ์ํด ์ค์ฝํ ๊ณ์ธต์ ์ํํด์ผ ํฉ๋๋ค. ์ด ์กฐํ ๊ณผ์ ์ ํนํ ๊น๊ฒ ์ค์ฒฉ๋ ์ปดํฌ๋ํธ ํธ๋ฆฌ์์ ์ ํต์ ์ธ React ์ปจํ ์คํธ์ ๊ฐ์ ์ ๊ทผํ๋ ๊ฒ๋ณด๋ค ๋น์ฉ์ด ๋ ๋ง์ด ๋ค ์ ์์ต๋๋ค.
- ์์กด์ฑ ์ถ์ : React๋ ์ด๋ค ์ปดํฌ๋ํธ๊ฐ ์ค์ฝํ ๋ด์ ์ด๋ค ๊ฐ์ ์์กดํ๋์ง๋ฅผ ์ถ์ ํด์ผ ํฉ๋๋ค. ์ด ์์กด์ฑ ์ถ์ ์ ๊ด๋ จ ๊ฐ์ด ๋ณ๊ฒฝ๋ ๋ ์ปดํฌ๋ํธ๊ฐ ๋ฆฌ๋ ๋๋ง๋๋๋ก ๋ณด์ฅํ๋ ๋ฐ ํ์์ ์ด์ง๋ง, ์ ์ฒด์ ์ธ ์ค๋ฒํค๋๋ฅผ ์ฆ๊ฐ์ํต๋๋ค.
experimental_Scope ์ฑ๋ฅ ๋ฒค์น๋งํน
experimental_Scope์ ์ฑ๋ฅ ์ํฅ์ ์์นํํ๊ธฐ ์ํด์๋ ์ฒ ์ ํ ๋ฒค์น๋งํน์ ์ํํ๋ ๊ฒ์ด ํ์์ ์
๋๋ค. ์ฌ๊ธฐ์๋ experimental_Scope๋ฅผ ๋ค์ํ ๋ฐฉ์์ผ๋ก ํ์ฉํ๋ ํ์ค์ ์ธ React ์ ํ๋ฆฌ์ผ์ด์
์ ๋ง๋ค๊ณ , ์ปดํฌ๋ํธ ๋ ๋๋ง, ์ํ ์
๋ฐ์ดํธ, ์ปจํ
์คํธ ์กฐํ์ ๊ฐ์ ๋ค์ํ ์์
์ ์ฑ๋ฅ์ ์ธก์ ํ๋ ๊ฒ์ด ํฌํจ๋ฉ๋๋ค.
๋ฒค์น๋งํน ์ ๊ณ ๋ คํด์ผ ํ ์์:
- ์ปดํฌ๋ํธ ํธ๋ฆฌ ๊น์ด: ์ปดํฌ๋ํธ ํธ๋ฆฌ์ ๊น์ด๋
experimental_Scope์ ์ฑ๋ฅ์ ์๋นํ ์ํฅ์ ๋ฏธ์น ์ ์์ต๋๋ค. ํธ๋ฆฌ๊ฐ ๊น์์๋ก ๋ ๋ง์ ์ค์ฝํ ์ํ๊ฐ ํ์ํ๊ธฐ ๋๋ฌธ์ ๋๋ค. - ์ค์ฝํ์ ์: ์ ํ๋ฆฌ์ผ์ด์ ๋ด ์ค์ฝํ์ ์๋ ์ฑ๋ฅ์ ์ํฅ์ ์ค ์ ์์ต๋๋ค. ๊ฐ ์ค์ฝํ๋ ์ ์ฒด์ ์ธ ์ค๋ฒํค๋๋ฅผ ์ฆ๊ฐ์ํต๋๋ค.
- ์ํ ์ ๋ฐ์ดํธ ๋น๋: ์ค์ฝํ ๋ด ์ํ ์ ๋ฐ์ดํธ์ ๋น๋๋ ์ฑ๋ฅ์ ์ํฅ์ ๋ฏธ์น ์ ์์ต๋๋ค. ๊ฐ ์ ๋ฐ์ดํธ๋ ์์กด์ฑ ์ถ์ ๊ณผ ์ ์ฌ์ ์ธ ๋ฆฌ๋ ๋๋ง์ ์ ๋ฐํ๊ธฐ ๋๋ฌธ์ ๋๋ค.
- ์ปจํ ์คํธ ๊ฐ์ ๋ณต์ก์ฑ: ์ค์ฝํ์ ์ ์ฅ๋ ๊ฐ์ ๋ณต์ก์ฑ๋ ์ญํ ์ ํ ์ ์์ต๋๋ค. ๋ณต์กํ ๊ฐ์ ๋ ๋ง์ ์ฒ๋ฆฌ๋ฅผ ์๊ตฌํ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค.
์์ ๋ฒค์น๋งํน ์๋๋ฆฌ์ค:
๊น๊ฒ ์ค์ฒฉ๋ ์ปดํฌ๋ํธ ํธ๋ฆฌ๋ฅผ ๊ฐ์ง ๊ฐ์์ ์ ์์๊ฑฐ๋ ์ ํ๋ฆฌ์ผ์ด์
์ ์๊ฐํด ๋ด
์๋ค. ์ด ์ ํ๋ฆฌ์ผ์ด์
์ experimental_Scope๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ฉ์ ์ธ์ฆ ์ํ, ์ฅ๋ฐ๊ตฌ๋ ๋ด์ฉ, ์ํ ์์ธ ์ ๋ณด๋ฅผ ๊ด๋ฆฌํฉ๋๋ค. ๋ฒค์น๋งํน ์๋๋ฆฌ์ค๋ ์ฌ์ฉ์๊ฐ ์ ํ๋ฆฌ์ผ์ด์
์ ํ์ํ๊ณ , ์ฅ๋ฐ๊ตฌ๋์ ์ํ์ ์ถ๊ฐํ๊ณ , ์ํ ์์ธ ์ ๋ณด๋ฅผ ๋ณด๋ ๊ฒ์ ์๋ฎฌ๋ ์ด์
ํ ์ ์์ต๋๋ค. ์ถ์ ํ ์ฑ๋ฅ ์งํ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- ์ด๊ธฐ ํ์ด์ง ๋ ๋๋ง ์๊ฐ: ์ ํ๋ฆฌ์ผ์ด์ ์ ์ด๊ธฐ ํ์ด์ง๋ฅผ ๋ ๋๋งํ๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์?
- ์ฅ๋ฐ๊ตฌ๋์ ์ํ ์ถ๊ฐ ์๊ฐ: ์ฅ๋ฐ๊ตฌ๋์ ์ํ์ ์ถ๊ฐํ๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์?
- ์ํ ์์ธ ์ ๋ณด ์ ๋ฐ์ดํธ ์๊ฐ: ํ์ด์ง์์ ์ํ ์์ธ ์ ๋ณด๋ฅผ ์ ๋ฐ์ดํธํ๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์?
- ์ด๋น ํ๋ ์ ์(FPS): ์ฌ์ฉ์ ์ํธ์์ฉ ๋์์ ํ๊ท FPS๋?
์ด๋ฌํ ์งํ๋ฅผ experimental_Scope ์ฌ์ฉ ์ฌ๋ถ์ ๋ฐ๋ผ ๋น๊ตํจ์ผ๋ก์จ ์ค์ ์ ํ๋ฆฌ์ผ์ด์
์์ ๊ทธ ์ฑ๋ฅ ์ํฅ์ ๋ช
ํํ๊ฒ ํ์
ํ ์ ์์ต๋๋ค.
experimental_Scope ์ฌ์ฉ ์ต์ ํ ์ ๋ต
experimental_Scope๊ฐ ์ค๋ฒํค๋๋ฅผ ์ ๋ฐํ ์ ์์ง๋ง, ์ฑ๋ฅ ์ํฅ์ ์ต์ํํ๊ณ ์ด์ ์ ๊ทน๋ํํ๊ธฐ ์ํด ์ฌ์ฉํ ์ ์๋ ๋ช ๊ฐ์ง ์ ๋ต์ด ์์ต๋๋ค.
1. ์ค์ฝํ ์์ฑ ์ต์ํ:
๋ถํ์ํ๊ฒ ์ค์ฝํ๋ฅผ ์์ฑํ์ง ๋ง์ญ์์ค. ์ปจํ ์คํธ ๊ฒฝ๊ณ๋ฅผ ๋ช ์์ ์ผ๋ก ์ ์ํด์ผ ํ ๋๋ง ์ค์ฝํ๋ฅผ ์์ฑํ์ธ์. ๊ธฐ์กด ์ค์ฝํ๋ฅผ ์ฌ์ฌ์ฉํ ์ ์๋์ง ๋๋ ๋ ผ๋ฆฌ์ ์ปดํฌ๋ํธ๋ฅผ ํจ๊ป ๊ทธ๋ฃนํํ์ฌ ์ค์ฝํ ์๋ฅผ ์ค์ผ ์ ์๋์ง ์ฌํ๊ฐํ์ธ์.
์์: ๊ฐ ์ํ ์์ธ ์ปดํฌ๋ํธ์ ๋ํด ๋ณ๋์ ์ค์ฝํ๋ฅผ ๋ง๋๋ ๋์ , ์ ์ฒด ์ํ ํ์ด์ง์ ๋ํด ๋จ์ผ ์ค์ฝํ๋ฅผ ๋ง๋ค๊ณ ์ํ ์์ธ ์ ๋ณด๋ฅผ ํ์ด์ง ๋ด ๊ฐ๋ณ ์ปดํฌ๋ํธ์ props๋ก ์ ๋ฌํ๋ ๊ฒ์ ๊ณ ๋ คํ์ธ์.
2. ์ปจํ ์คํธ ์กฐํ ์ต์ ํ:
์ค์ฝํ ์ํ ๊น์ด๋ฅผ ์ต์ํํ๋๋ก ์ปดํฌ๋ํธ ํธ๋ฆฌ๋ฅผ ๊ตฌ์กฐํํ์ธ์. ์ปดํฌ๋ํธ๊ฐ ํธ๋ฆฌ ์์์ ๋ฉ๋ฆฌ ์๋ ์ค์ฝํ์ ๊ฐ์ ์ ๊ทผํด์ผ ํ๋ ๊น๊ฒ ์ค์ฒฉ๋ ์ปดํฌ๋ํธ ํธ๋ฆฌ๋ฅผ ํผํ์ธ์. ์ปดํฌ๋ํธ๋ฅผ ์ฌ๊ตฌ์ฑํ๊ฑฐ๋ ์ปดํฌ๋ํธ ํฉ์ฑ(composition)๊ณผ ๊ฐ์ ๊ธฐ์ ์ ์ฌ์ฉํ์ฌ ํธ๋ฆฌ๋ฅผ ํํํํ๋ ๊ฒ์ ๊ณ ๋ คํ์ธ์.
์์: ์ปดํฌ๋ํธ๊ฐ ํธ๋ฆฌ์์ ์ฌ๋ฌ ๋ ๋ฒจ ์์ ์๋ ์ค์ฝํ์ ๊ฐ์ ์ ๊ทผํด์ผ ํ๋ ๊ฒฝ์ฐ, ์ค์ฝํ ์ํ์ ์์กดํ๋ ๋์ ๊ฐ์ props๋ก ์ปดํฌ๋ํธ์ ์ ๋ฌํ๋ ๊ฒ์ ๊ณ ๋ คํ์ธ์.
3. ๋น์ฉ์ด ๋ง์ด ๋๋ ๊ณ์ฐ ๋ฉ๋ชจ์ด์ ์ด์ :
์ค์ฝํ์ ์ ์ฅ๋ ๊ฐ์ด ๋น์ฉ์ด ๋ง์ด ๋๋ ๊ณ์ฐ์์ ํ์๋ ๊ฒฝ์ฐ, ๋ถํ์ํ ์ฌ๊ณ์ฐ์ ํผํ๊ธฐ ์ํด ํด๋น ๊ณ์ฐ์ ๋ฉ๋ชจ์ด์ ์ด์
ํ๋ ๊ฒ์ ๊ณ ๋ คํ์ธ์. React.memo, useMemo, useCallback๊ณผ ๊ฐ์ ๊ธฐ์ ์ ์ฌ์ฉํ์ฌ ๊ณ์ฐ ์ง์ฝ์ ์ธ ์ปดํฌ๋ํธ, ๊ฐ, ํจ์๋ฅผ ๋ฉ๋ชจ์ด์ ์ด์
ํ์ธ์.
์์: ํํฐ๋ง๋ ์ํ ๋ชฉ๋ก์ ์ ์ฅํ๋ ์ค์ฝํ๊ฐ ์๋ ๊ฒฝ์ฐ, useMemo๋ฅผ ์ฌ์ฉํ์ฌ ํํฐ๋ง ํจ์๋ฅผ ๋ฉ๋ชจ์ด์ ์ด์
ํ์ฌ ์ปดํฌ๋ํธ๊ฐ ๋ฆฌ๋ ๋๋ง๋ ๋๋ง๋ค ์ํ์ ๋ค์ ํํฐ๋งํ๋ ๊ฒ์ ๋ฐฉ์งํ์ธ์.
4. ์ํ ์ ๋ฐ์ดํธ ์ผ๊ด ์ฒ๋ฆฌ(Batching):
์ค์ฝํ ๋ด์์ ์ฌ๋ฌ ๊ฐ์ ์
๋ฐ์ดํธํ ๋, ๋ฆฌ๋ ๋๋ง ํ์๋ฅผ ์ต์ํํ๊ธฐ ์ํด ์
๋ฐ์ดํธ๋ฅผ ํจ๊ป ์ผ๊ด ์ฒ๋ฆฌํ์ธ์. ํจ์ํ ์
๋ฐ์ดํฐ์ ํจ๊ป setState๋ฅผ ์ฌ์ฉํ๋ ๊ฒ๊ณผ ๊ฐ์ ๊ธฐ์ ์ ์ฌ์ฉํ์ฌ ์
๋ฐ์ดํธ๋ฅผ ์ผ๊ด ์ฒ๋ฆฌํ์ธ์.
์์: ์ค์ฝํ ๋ด ์ฌ๋ฌ ๊ฐ์ ๋ณ๋์ setState ํธ์ถ๋ก ์
๋ฐ์ดํธํ๋ ๋์ , ๋จ์ผ setState ํธ์ถ๊ณผ ํจ์ํ ์
๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ์ฌ ๋ชจ๋ ๊ฐ์ ํ ๋ฒ์ ์
๋ฐ์ดํธํ์ธ์.
5. ํ๋กํ์ผ๋ง ๋๊ตฌ:
React์ ํ๋กํ์ผ๋ง ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ experimental_Scope์ ๊ด๋ จ๋ ์ฑ๋ฅ ๋ณ๋ชฉ ํ์์ ์๋ณํ์ธ์. ์ด ๋๊ตฌ๋ค์ ์ค์ฝํ ์ฒ๋ฆฌ๊ฐ ์ฑ๋ฅ ๋ฌธ์ ๋ฅผ ์ผ์ผํค๋ ์์ญ์ ์ ํํ ์ฐพ์๋ด๊ณ ์ต์ ํ ๋
ธ๋ ฅ์ ์๋ดํ๋ ๋ฐ ๋์์ด ๋ ์ ์์ต๋๋ค.
์์: React Profiler๋ฅผ ์ฌ์ฉํ์ฌ ์ค์ฝํ ์ ๋ฐ์ดํธ๋ก ์ธํด ์์ฃผ ๋ฆฌ๋ ๋๋ง๋๋ ์ปดํฌ๋ํธ๋ฅผ ์๋ณํ๊ณ ํด๋น ๋ฆฌ๋ ๋๋ง์ ์์ธ์ ์กฐ์ฌํ์ธ์.
6. ๋์ ๊ณ ๋ ค:
experimental_Scope๋ฅผ ์ฑํํ๊ธฐ ์ ์, ํน์ ์ฌ์ฉ ์ฌ๋ก์ ๊ฐ์ฅ ์ ํฉํ ์๋ฃจ์
์ธ์ง ์ ์คํ๊ฒ ๊ณ ๋ คํ์ธ์. ์ด๋ค ๊ฒฝ์ฐ์๋ ์ ํต์ ์ธ React ์ปจํ
์คํธ๋ Redux ๋๋ Zustand์ ๊ฐ์ ๋ค๋ฅธ ์ํ ๊ด๋ฆฌ ์๋ฃจ์
์ด ๋ ์ ํฉํ๊ณ ๋ ๋์ ์ฑ๋ฅ์ ์ ๊ณตํ ์ ์์ต๋๋ค.
์ค์ ์ฌ๋ก ๋ฐ ์ฌ๋ก ์ฐ๊ตฌ
experimental_Scope์ ์ฑ๋ฅ ์ํฅ๊ณผ ์ต์ ํ ์ ๋ต์ ํจ๊ณผ๋ฅผ ์ค๋ช
ํ๊ธฐ ์ํด ๋ช ๊ฐ์ง ์ค์ ์ฌ๋ก์ ์ฌ๋ก ์ฐ๊ตฌ๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
์ฌ๋ก ์ฐ๊ตฌ 1: ์ ์์๊ฑฐ๋ ์ ํ๋ฆฌ์ผ์ด์
ํ ์ ์์๊ฑฐ๋ ์ ํ๋ฆฌ์ผ์ด์
์ ์ด๊ธฐ์ experimental_Scope๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ฉ์ ์ธ์ฆ ์ํ์ ์ฅ๋ฐ๊ตฌ๋ ๋ด์ฉ์ ๊ด๋ฆฌํ์ต๋๋ค. ๊ทธ๋ฌ๋ ํ๋กํ์ผ๋ง ๊ฒฐ๊ณผ, ์ค์ฝํ ์ฒ๋ฆฌ๊ฐ ํนํ ์ฅ๋ฐ๊ตฌ๋์ ์ํ์ ์ถ๊ฐํ๊ฑฐ๋ ํ์ด์ง ๊ฐ ์ด๋๊ณผ ๊ฐ์ ์ฌ์ฉ์ ์ํธ์์ฉ ์ค์ ์ฌ๊ฐํ ์ฑ๋ฅ ๋ฌธ์ ๋ฅผ ์ผ์ผํค๋ ๊ฒ์ผ๋ก ๋ํ๋ฌ์ต๋๋ค. ์ ํ๋ฆฌ์ผ์ด์
์ ๋ถ์ํ ํ, ๊ฐ๋ฐ์๋ค์ ๋ช ๊ฐ์ง ์ต์ ํ ์์ญ์ ์๋ณํ์ต๋๋ค:
- ๊ด๋ จ ์ํ๋ฅผ ๋จ์ผ ์ค์ฝํ๋ก ํตํฉํ์ฌ ์ค์ฝํ์ ์๋ฅผ ์ค์์ต๋๋ค.
- ์ค์ฝํ ์ํ๋ฅผ ์ต์ํํ๊ธฐ ์ํด ์ปดํฌ๋ํธ ํธ๋ฆฌ๋ฅผ ์ฌ๊ตฌ์ฑํ์ฌ ์ปจํ ์คํธ ์กฐํ๋ฅผ ์ต์ ํํ์ต๋๋ค.
- ์ํ ํํฐ๋ง ๋ฐ ์ ๋ ฌ๊ณผ ๊ด๋ จ๋ ๋น์ฉ์ด ๋ง์ด ๋๋ ๊ณ์ฐ์ ๋ฉ๋ชจ์ด์ ์ด์ ํ์ต๋๋ค.
- ๋ฆฌ๋ ๋๋ง ํ์๋ฅผ ์ต์ํํ๊ธฐ ์ํด ์ํ ์ ๋ฐ์ดํธ๋ฅผ ์ผ๊ด ์ฒ๋ฆฌํ์ต๋๋ค.
์ด๋ฌํ ์ต์ ํ ๊ฒฐ๊ณผ, ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฑ๋ฅ์ด ํฌ๊ฒ ํฅ์๋์์ต๋๋ค. ์ฅ๋ฐ๊ตฌ๋์ ์ํ์ ์ถ๊ฐํ๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ด 30% ๊ฐ์ํ๊ณ , ์ฌ์ฉ์ ์ํธ์์ฉ ๋์์ ์ ์ฒด FPS๊ฐ 20% ์ฆ๊ฐํ์ต๋๋ค.
์ฌ๋ก ์ฐ๊ตฌ 2: ์์ ๋ฏธ๋์ด ์ ํ๋ฆฌ์ผ์ด์
ํ ์์
๋ฏธ๋์ด ์ ํ๋ฆฌ์ผ์ด์
์ experimental_Scope๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ์ฉ์ ํ๋กํ๊ณผ ๋ด์ค ํผ๋๋ฅผ ๊ด๋ฆฌํ์ต๋๋ค. ํ๋กํ์ผ๋ง ๊ฒฐ๊ณผ, ํนํ ๋ด์ค ํผ๋ ํญ๋ชฉ์ ๋ ๋๋งํ๋ ๋์ ์ค์ฝํ ์ฒ๋ฆฌ๊ฐ ์ฑ๋ฅ ๋ฌธ์ ๋ฅผ ์ผ์ผํค๋ ๊ฒ์ผ๋ก ๋ํ๋ฌ์ต๋๋ค. ์ ํ๋ฆฌ์ผ์ด์
์ ๋ถ์ํ ํ, ๊ฐ๋ฐ์๋ค์ ๋ด์ค ํผ๋ ๋ด ์ปดํฌ๋ํธ์ ๊น์ ์ค์ฒฉ์ด ๋ฌธ์ ์ ์์ธ์์ ํ์ธํ์ต๋๋ค. ๊ทธ๋ค์ ์ปดํฌ๋ํธ ํฉ์ฑ์ ์ฌ์ฉํ๊ณ ์ปดํฌ๋ํธ ํธ๋ฆฌ๋ฅผ ํํํํ์ฌ ๋ด์ค ํผ๋๋ฅผ ๋ฆฌํฉํฐ๋งํ์ต๋๋ค. ๋ํ ์ฌ๋ฌ ์ค์ฝํ๋ฅผ props๋ก ๋์ฒดํ์ฌ ์ฑ๋ฅ์ ํฌ๊ฒ ํฅ์์์ผฐ์ต๋๋ค.
์ธ์ experimental_Scope๋ฅผ ์ฌ์ฉํ๊ณ , ์ธ์ ํผํด์ผ ํ๋๊ฐ
experimental_Scope๋ ๊ฐ๋ ฅํ ๋๊ตฌ์ด์ง๋ง, ๋ง๋ณํต์น์ฝ์ ์๋๋๋ค. ํน์ ์ฌ์ฉ ์ฌ๋ก์ ์ ํฉํ ์๋ฃจ์
์ธ์ง ์ ์คํ๊ฒ ๊ณ ๋ คํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ๋ค์์ ๊ฒฐ์ ์ ๋์์ด ๋๋ ๋ช ๊ฐ์ง ๊ฐ์ด๋๋ผ์ธ์
๋๋ค:
experimental_Scope๋ฅผ ์ฌ์ฉํด์ผ ํ ๋:
- ์ปจํ ์คํธ ์ ๊ทผ์ ๋ํ ๊ฒฝ๊ณ๋ฅผ ๋ช ์์ ์ผ๋ก ์ ์ํด์ผ ํ ๋.
- ๋ฐ์ดํฐ ํ๋ฆ์ ์์ธก ๊ฐ๋ฅ์ฑ์ ํฅ์์ํค๊ณ ์ถ์ ๋.
- ๊ณต์ ์ํ์ ์ ๊ทผํด์ผ ํ๋ ๋ง์ ์ปดํฌ๋ํธ๊ฐ ์๋ ๋ณต์กํ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ค๋ฃฐ ๋.
- ์ค์ฝํ ์ฌ์ฉ ์ต์ ํ์ ์๊ฐ์ ํฌ์ํ ์ํฅ์ด ์์ ๋.
experimental_Scope๋ฅผ ํผํด์ผ ํ ๋:
- ๊ณต์ ์ํ์ ์ ๊ทผํด์ผ ํ๋ ์ปดํฌ๋ํธ๊ฐ ๋ช ๊ฐ๋ฟ์ธ ๊ฐ๋จํ ์ ํ๋ฆฌ์ผ์ด์ ์ผ ๋.
- ์ ์ฌ์ ์ธ ์ฑ๋ฅ ์ค๋ฒํค๋๊ฐ ์ฐ๋ ค๋ ๋.
- API์ ์คํ์ ์ธ ์ฑ๊ฒฉ์ ์ต์ํ์ง ์์ ๋.
- ์ด๋ฏธ ์ ์๋ํ๋ ์๋ฃจ์ (์: ์ ํต์ ์ธ ์ปจํ ์คํธ, Redux, Zustand)์ด ์์ ๋.
React ์ปจํ ์คํธ์ ์ํ ๊ด๋ฆฌ์ ๋ฏธ๋
experimental_Scope๋ React์์ ์ปจํ
์คํธ์ ์ํ๋ฅผ ๊ด๋ฆฌํ๋ ์๋ก์ด ๋ฐฉ๋ฒ์ ์ง์์ ์ผ๋ก ํ์ํ๊ณ ์์์ ๋ณด์ฌ์ค๋๋ค. React๊ฐ ๊ณ์ ๋ฐ์ ํจ์ ๋ฐ๋ผ, ์ด ๋ถ์ผ์์ ๋ ๋ง์ ํ์ ์ ๊ธฐ๋ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋ฐ์ ์ ๋ํ ์ ๋ณด๋ฅผ ์ง์์ ์ผ๋ก ์ป๊ณ , ํน์ ์๊ตฌ์ ๊ฐ์ฅ ์ ํฉํ ์๋ฃจ์
์ ์ฐพ๊ธฐ ์ํด ์๋ก์ด ์ ๊ทผ ๋ฐฉ์์ ์คํํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
๋ฏธ๋์๋ ์๋ง๋ ๋ ์ ๊ตํ ์ปจํ ์คํธ ๊ด๋ฆฌ ๊ธฐ์ ๊ณผ ํจ๊ป ๋ ๋ง์ ๋ด์ฅ ์ต์ ํ ๊ธฐ๋ฅ์ด ํฌํจ๋ ๊ฒ์ ๋๋ค. ์ค์ฝํ ๊ฐ์ ์๋ ๋ฉ๋ชจ์ด์ ์ด์ ์ด๋ ๋ ํจ์จ์ ์ธ ์ค์ฝํ ์ํ ์๊ณ ๋ฆฌ์ฆ๊ณผ ๊ฐ์ ๊ธฐ๋ฅ์ ํ์ฌ์ ์ผ๋ถ ์ฑ๋ฅ ์ฐ๋ ค๋ฅผ ์ํํ ์ ์์ต๋๋ค.
๊ฒฐ๋ก
React์ experimental_Scope API๋ React ์ ํ๋ฆฌ์ผ์ด์
์์ ์ปจํ
์คํธ๋ฅผ ๊ด๋ฆฌํ๋ ์ ๋งํ ์ ๊ทผ ๋ฐฉ์์ ์ ๊ณตํฉ๋๋ค. ์ค์ฝํ ์ฒ๋ฆฌ ์ค๋ฒํค๋๋ฅผ ์ ๋ฐํ ์ ์์ง๋ง, ์์ธก ๊ฐ๋ฅ์ฑ ํฅ์๊ณผ ์ ์ฌ์ ์ธ ์ฑ๋ฅ ์ต์ ํ์ ๊ฐ์ ์ด์ ๋๋ถ์ ํน์ ์ฌ์ฉ ์ฌ๋ก์ ์ ์ฉํ ๋๊ตฌ๊ฐ ๋ฉ๋๋ค. ์ค๋ฒํค๋์ ์์ธ์ ์ดํดํ๊ณ ํจ๊ณผ์ ์ธ ์ต์ ํ ์ ๋ต์ ์ฌ์ฉํจ์ผ๋ก์จ experimental_Scope์ ์ฑ๋ฅ ์ํฅ์ ์ต์ํํ๊ณ ๊ทธ ์ฅ์ ์ ํ์ฉํ์ฌ ๋ ์ ์ง๋ณด์ํ๊ธฐ ์ฝ๊ณ ์ฑ๋ฅ์ด ๋ฐ์ด๋ React ์ ํ๋ฆฌ์ผ์ด์
์ ๊ตฌ์ถํ ์ ์์ต๋๋ค. ์ฝ๋๋ฅผ ํญ์ ๋ฒค์น๋งํนํ๊ณ ์ ํ๋ฆฌ์ผ์ด์
์ ํ๋กํ์ผ๋งํ์ฌ ์ด ๊ฐ๋ ฅํ API๋ฅผ ์ธ์ ์ด๋ป๊ฒ ์ฌ์ฉํ ์ง์ ๋ํ ์ ๋ณด์ ์
๊ฐํ ๊ฒฐ์ ์ ๋ด๋ฆฌ๊ณ ์๋์ง ํ์ธํ๋ ๊ฒ์ ์์ง ๋ง์ญ์์ค. ํน์ ์ ํ๋ฆฌ์ผ์ด์
์ ์๊ตฌ์ ๋ง๋ ์ฑ๋ฅ ํ
์คํธ์ ์ต์ ํ๋ฅผ ํญ์ ์ฐ์ ์ํด์ผ ํฉ๋๋ค. ์ด๋ฌํ ํธ๋ ์ด๋์คํ๋ฅผ ์ดํดํ๊ณ ์ ์ ํ ์ ๋ต์ ๊ตฌํํ๋ ๊ฒ์ด experimental_Scope๋ฅผ ํจ๊ณผ์ ์ผ๋ก ํ์ฉํ๋ ํจ์จ์ ์ธ React ์ ํ๋ฆฌ์ผ์ด์
์ ๊ตฌ์ถํ๋ ํต์ฌ์
๋๋ค.